import Vue from 'vue'
import VueRouter from 'vue-router'
import routes from './fixedRoute.js'

Vue.use(VueRouter)

// // 解决编程式路由往同一地址跳转时会报错的情况
// const originalPush = VueRouter.prototype.push
// const originalReplace = VueRouter.prototype.replace
// //push
// VueRouter.prototype.push = function push(location, onResolve, onReject) {
//   console.log('originalPush', location, onResolve, onReject)
//   if (onResolve || onReject)
//     return originalPush.call(this, location, onResolve, onReject)
//   return originalPush.call(this, location).catch((err) => err)
// }
// //replace
// VueRouter.prototype.replace = function push(location, onResolve, onReject) {
//   if (onResolve || onReject)
//     return originalReplace.call(this, location, onResolve, onReject)
//   return originalReplace.call(this, location).catch((err) => err)
// }

const router = new VueRouter({
  // router: routes,
  routes,
  mode: 'history',
  scrollBehavior(to, from, savePosition) {
    if (savePosition) {
      return savePosition
    } else {
      return {
        x: 0,
        y: 0,
      }
    }
  },
})

export default router
